﻿#region Disclaimer/Info
///////////////////////////////////////////////////////////////////////////////////////////////////
// MetaCollection
// 
// MetaCollection is a system to provide a standard structure, permissions and metadata service
// for content organization.
//
// This project is hosted at Google Code at http://code.google.com/p/metacollection/
//
// This project is licensed under the BSD license.  See the License.txt file for more information.
///////////////////////////////////////////////////////////////////////////////////////////////////
#endregion

using System;
using System.Collections.Generic;
using MetaCollection.Framework.Model;

namespace MetaCollection.SqliteRepository
{
	[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Sqlite")]
	public class SqliteItemInstance : IItemInstance
	{
		#region IItemInstance Members

		public Guid Id { get; set; }

		public string ExternalId { get; set; }

		public Guid ParentId { get; set; }

		public int Version { get; set; }

		public int? LeftVersion { get; set; }

		public int? RightVersion { get; set; }

		public string CreatedBy { get; set; }

		public string Comment { get; set; }

		public string Name { get; set; }

		public bool Published { get; set; }

		public string MimeType { get; set; }

		public Guid Specification { get; set; }

		public DateTime LastModified { get; set; }

		public Uri Href { get; set; }

        public Guid ItemClaimId { get; set; }

		public IEnumerable<IItemProperty> Properties { get; set; }

		public IEnumerable<IItemClaim> AccessClaims { get; set; }

		public IEnumerable<IItemRelationship> Relationships { get; set; }

		#endregion
	}}
